// class Scheduler {
//     constructor(limit) {
//         this.queue = [];
//         this.maxCount = limit;
//         this.runCounts = 0;
//     }
//     add(time, order) {
//         const promiseCreator = () => {
//             return new Promise((resolve, reject) => {
//                 setTimeout(() => {
//                     console.log(order);
//                     resolve();
//                 }, time);
//             });
//         };
//         this.queue.push(promiseCreator);
//     }
//     taskStart() {
//         for (let i = 0; i < this.maxCount; i++) {
//             this.request();
//         }
//     }
//     request() {
//         if (!this.queue || !this.queue.length || this.runCounts >= this.maxCount) {
//             return;
//         }
//         this.runCounts++;
//         this.queue
//             .shift()()
//             .then(() => {
//                 this.runCounts--;
//                 this.request();
//             });
//     }
// }
// const scheduler = new Scheduler(2);
// const addTask = (time, order) => {
//     scheduler.add(time, order);
// };
// addTask(1000, "1");
// addTask(500, "2");
// addTask(300, "3");
// addTask(400, "4");
// scheduler.taskStart();
// class Scheduler {
//     constructor(limit) {
//         this.limit = limit;
//         this.queue = [];
//         this.runCount = 0;
//     }
//     add(time, order) {
//         const promiseCreator = () => {
//             return new Promise((resolve, reject) => {
//                 setTimeout(() => {
//                     console.log(order);
//                     resolve()
//                 }, time)
//             })
//         }
//         this.queue.push(promiseCreator)
//     }
//     taskStart() {
//         for (let i = 0; i < this.limit; i++) {
//             this.request()
//         }
//     }
//     request() {
//         if (!this.queue || !this.queue.length || this.runCount > this.limit) return
//         this.runCount++

//     }
// }
function createNums(length) {
    let array = [];
    while (array.length < length) {
        let num = parseInt(Math.random() * length);
        if (!array.includes(num)) {
            array.push(num);
        }
    }
    return array.map((num) => (num < 10 ? "0" + num : num));
}
function waResult(length) {

    const ARRAY_20 = createNums(21);
    let result = {};
    const GROUP = length;
    let GROUP_PER = parseInt(21 / GROUP);
    for (let i = 0; i < GROUP; i++) {
        result[i + 1] = {};
        if (i === GROUP - 1) {
            result[i + 1].value = ARRAY_20.slice(GROUP_PER * i, 21).join(",");
        } else {
            result[i + 1].value = ARRAY_20.slice(
                GROUP_PER * i,
                GROUP_PER * (i + 1)
            ).join(",");
        }
    }

    return result;
}
console.log(createNums(21),999)